﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace SnongPhoneShop.Models
{
    public class RegisterModels
    {
        [Required(ErrorMessage = "Tên đăng nhập không được để trống")]
        [MinLength(6, ErrorMessage = "Tên đăng nhập phải có ít nhất 6 ký tự")]
        [MaxLength(50, ErrorMessage = "Tên đăng nhập có nhiều nhất 50 ký tự")]
        public string UserID { get; set; }

        [Required(ErrorMessage = "Họ tên không được để trống")]
        public string HoTen { get; set; }

        [Required(ErrorMessage = "Email không được để trống")]
        [EmailAddress(ErrorMessage = "Không đúng định dạng Email")]
        public string Email { get; set; }

        [Required(ErrorMessage = "Mật khẩu không được để trống")]
        [MinLength(6, ErrorMessage = "Mật khẩu phải có ít nhất 6 ký tự")]
        public string Password { get; set; }

        [Compare("Password", ErrorMessage = "Mật khẩu nhập lại không khớp")]
        public string ConfirmPassword { get; set; }

        [Required(ErrorMessage = "Ngày sinh không được để trống")]
        [DataType(DataType.Date, ErrorMessage = "Không đúng định dạng ngày tháng (Tháng/Ngày/Năm)")]
        public DateTime NgaySinh { get; set; }

        [Required(ErrorMessage = "Tỉnh/Thành phố không được để trống")]
        public int MaTinh_TP { get; set; }

        [Required(ErrorMessage = "Chứng minh thư không được để trống")]
        public string CMT { get; set; }

        public string SoDT { get; set; }
        public string DiaChi { get; set; }
    }

    public class ChangePassword
    {
        [Required(ErrorMessage = "Mật khẩu cũ không đươc để trống")]
        [MinLength(6, ErrorMessage = "Mật khẩu phải có ít nhất 6 ký tự")]
        public string OldPass { get; set; }

        [Required(ErrorMessage = "Mật khẩu mới không được để trống")]
        [MinLength(6, ErrorMessage = "Mật khẩu phải có ít nhất 6 ký tự")]
        public string NewPass { get; set; }

        [Compare("NewPass", ErrorMessage = "Mật khẩu nhập lại không khớp")]
        public string ComfirmNewPass { get; set; }
    }

    public class ForgotPassword
    {
        [Required(ErrorMessage = "Tên đăng nhập không được để trống")]
        [MinLength(6, ErrorMessage = "Tên đăng nhập phải có ít nhất 6 ký tự")]
        [MaxLength(50, ErrorMessage = "Tên đăng nhập có nhiều nhất 50 ký tự")]
        public string UserID { get; set; }

        [Required(ErrorMessage = "Mật khẩu mới không được để trống")]
        [MinLength(6, ErrorMessage = "Mật khẩu phải có ít nhất 6 ký tự")]
        public string NewPass { get; set; }

        [Compare("NewPass", ErrorMessage = "Mật khẩu nhập lại không khớp")]
        public string ComfirmNewPass { get; set; }

        [Required(ErrorMessage = "Email không được để trống")]
        [EmailAddress(ErrorMessage = "Không đúng định dạng Email")]
        public string Email { get; set; }

        [Required(ErrorMessage = "Chứng minh thư không được để trống")]
        public string CMT { get; set; }
    }
}